iMouse投屏 上传图片
调用说明
依赖 iMouse投屏 客户端
只在这台设备以 iMouse投屏 方式推流时可用,前置条件与 code 70~73 的含义见「iMouse投屏 相册列表」。
把电脑上的图片上传到手机相册。支持多台设备同时上传(各台并行),支持一次多个文件。
- 请求参数
| 参数 | 类型 | 说明 | 备注 |
|---|---|---|---|
| fun | 字符串 | /plugin/imcast/photo/upload | 请求功能名 |
| id | 字符串 | 设备id | 多个设备用逗号隔开 |
| files | 字符串数组 | 电脑上的文件路径列表 | 本地不存在的文件不会发送,计入 fail |
| album_name | 字符串 | 目标相册名 | 不存在会自动创建;不传保存到相机胶卷 |
| outtime | 整数 | 超时时间 | 单位毫秒,不传或 0 用内核配置(默认 15 秒);文件多、图大时请调大 |
- httpGet请求示例
curl --request GET \
--url 'http://192.168.9.9:9911/api/plugin/imcast/photo/upload?id=6C:8D:C1:67:04:29&files=%5B%22D%3A%5Ca.jpg%22%5D&album_name=%E6%B5%8B%E8%AF%95'
- httpPost请求示例
curl --request POST \
--url http://192.168.9.9:9911/api \
--header "content-type: multipart/form-data" \
--form "fun=/plugin/imcast/photo/upload" \
--form "id=6C:8D:C1:67:04:29" \
--form 'files=["D:\\a.jpg","D:\\b.png"]' \
--form "album_name=测试"
- httpPost json请求示例【websocket也可发送同样json请求】
curl --request POST \
--url http://192.168.9.9:9911/api \
--header 'Content-Type: application/json' \
--data '{
"fun": "/plugin/imcast/photo/upload",
"data": {
"id": "6C:8D:C1:67:04:29,5C:F7:E6:CE:65:22",
"album_name": "测试",
"files": ["D:\\a.jpg", "D:\\b.png"],
"outtime": 60000
}
}'
响应结果
{
"data": {
"list": [
{ "id": "6C:8D:C1:67:04:29", "code": 0, "message": "成功", "total": 2, "success": 2, "fail": 0 },
{ "id": "5C:F7:E6:CE:65:22", "code": 70, "message": "设备当前不是iMouse投屏模式", "total": 2, "success": 0, "fail": 2 }
],
"code": 70,
"id": "6C:8D:C1:67:04:29,5C:F7:E6:CE:65:22",
"message": "设备当前不是iMouse投屏模式"
},
"status": 200,
"message": "成功",
"msgid": 0,
"fun": "/plugin/imcast/photo/upload"
}
- 响应data数据字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| code | 整数 | 全部设备都成功为 0,否则是第一台失败设备的 code |
| list[].id | 字符串 | 设备id |
| list[].code | 整数 | 这台的结果,0 成功 |
| list[].message | 字符串 | 这台的说明 |
| list[].total | 整数 | 请求里的文件数 |
| list[].success | 整数 | 保存成功的数量 |
| list[].fail | 整数 | 失败数(含本地不存在的文件) |
备注
文件是内核以 multipart 一次性发给手机的,电脑上的路径手机看不到;传的是内核所在电脑上的路径。